package com.single

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

/**
 * Author atguigu
 * Date 2020/3/13 14:22
 */
object Sample {
    def main(args: Array[String]): Unit = {
        val conf: SparkConf = new SparkConf().setAppName("Sample").setMaster("local[2]")
        val sc: SparkContext = new SparkContext(conf)
        val list1 = 1 to 20
        val rdd1: RDD[Int] = sc.parallelize(list1, 2)
        // 参数1: 表示是否放回抽样.  false表示不放回.如果是false的话,那么后面第二个参数不能超过1,
        //   如果是true,就代表放回抽样,第二个参数可以从0到无穷大.只要大于等于0就可以了.
      // 参数2是比例的意思.
        val rdd2 = rdd1.sample(false, 0.5)
        rdd2.collect.foreach(println)

        sc.stop()
    }
}
